home *** CD-ROM | disk | FTP | other *** search
/ Windows Game Programming for Dummies (2nd Edition) / WinGamProgFD.iso / pc / DirectX SDK / DXSDK / samples / Multimedia / DirectShow / Common / dshowasf.h next >
Encoding:
C/C++ Source or Header  |  2001-10-08  |  9.8 KB  |  338 lines

  1. //------------------------------------------------------------------------------
  2. // File: DShowASF.h
  3. //
  4. // Desc: DirectShow sample code - prototypes for methods used by DirectShow
  5. //       to interface with ASF content.
  6. //
  7. // Copyright (c) 1999-2001 Microsoft Corporation.  All rights reserved.
  8. //------------------------------------------------------------------------------
  9.  
  10. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  11.  
  12. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  13.  
  14.  
  15.  /* File created by MIDL compiler version 6.00.0334 */
  16. /* Compiler settings for dshowasf.idl:
  17.     Oicf, W1, Zp8, env=Win32 (32b run)
  18.     protocol : dce , ms_ext, c_ext, robust
  19.     error checks: allocation ref bounds_check enum stub_data 
  20.     VC __declspec() decoration level: 
  21.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  22.          DECLSPEC_UUID(), MIDL_INTERFACE()
  23. */
  24. //@@MIDL_FILE_HEADING(  )
  25.  
  26.  
  27. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  28. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  29. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  30. #endif
  31.  
  32. #include "rpc.h"
  33. #include "rpcndr.h"
  34.  
  35. #ifndef __RPCNDR_H_VERSION__
  36. #error this stub requires an updated version of <rpcndr.h>
  37. #endif // __RPCNDR_H_VERSION__
  38.  
  39. #ifndef COM_NO_WINDOWS_H
  40. #include "windows.h"
  41. #include "ole2.h"
  42. #endif /*COM_NO_WINDOWS_H*/
  43.  
  44. #ifndef __dshowasf_h__
  45. #define __dshowasf_h__
  46.  
  47. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  48. #pragma once
  49. #endif
  50.  
  51. /* Forward Declarations */ 
  52.  
  53. #ifndef __IConfigAsfWriter_FWD_DEFINED__
  54. #define __IConfigAsfWriter_FWD_DEFINED__
  55. typedef interface IConfigAsfWriter IConfigAsfWriter;
  56. #endif     /* __IConfigAsfWriter_FWD_DEFINED__ */
  57.  
  58.  
  59. /* header files for imported files */
  60. #include "unknwn.h"
  61. #include "objidl.h"
  62. #include "strmif.h"
  63. #include "wmsdkidl.h"
  64.  
  65. #ifdef __cplusplus
  66. extern "C"{
  67. #endif 
  68.  
  69. void * __RPC_USER MIDL_user_allocate(size_t);
  70. void __RPC_USER MIDL_user_free( void * ); 
  71.  
  72. /* interface __MIDL_itf_dshowasf_0000 */
  73. /* [local] */ 
  74.  
  75. EXTERN_GUID( IID_IConfigAsfWriter,0x45086030,0xF7E4,0x486a,0xB5,0x04,0x82,0x6B,0xB5,0x79,0x2A,0x3B );
  76.  
  77.  
  78.  
  79.  
  80. extern RPC_IF_HANDLE __MIDL_itf_dshowasf_0000_v0_0_c_ifspec;
  81. extern RPC_IF_HANDLE __MIDL_itf_dshowasf_0000_v0_0_s_ifspec;
  82.  
  83. #ifndef __IConfigAsfWriter_INTERFACE_DEFINED__
  84. #define __IConfigAsfWriter_INTERFACE_DEFINED__
  85.  
  86. /* interface IConfigAsfWriter */
  87. /* [unique][uuid][object] */ 
  88.  
  89.  
  90. EXTERN_C const IID IID_IConfigAsfWriter;
  91.  
  92. #if defined(__cplusplus) && !defined(CINTERFACE)
  93.     
  94.     MIDL_INTERFACE("45086030-F7E4-486a-B504-826BB5792A3B")
  95.     IConfigAsfWriter : public IUnknown
  96.     {
  97.     public:
  98.         virtual HRESULT STDMETHODCALLTYPE ConfigureFilterUsingProfileId( 
  99.             /* [in] */ DWORD dwProfileId) = 0;
  100.         
  101.         virtual HRESULT STDMETHODCALLTYPE GetCurrentProfileId( 
  102.             /* [out] */ DWORD *pdwProfileId) = 0;
  103.         
  104.         virtual HRESULT STDMETHODCALLTYPE ConfigureFilterUsingProfileGuid( 
  105.             /* [in] */ REFGUID guidProfile) = 0;
  106.         
  107.         virtual HRESULT STDMETHODCALLTYPE GetCurrentProfileGuid( 
  108.             /* [out] */ GUID *pProfileGuid) = 0;
  109.         
  110.         virtual HRESULT STDMETHODCALLTYPE ConfigureFilterUsingProfile( 
  111.             /* [in] */ IWMProfile *pProfile) = 0;
  112.         
  113.         virtual HRESULT STDMETHODCALLTYPE GetCurrentProfile( 
  114.             /* [out] */ IWMProfile **ppProfile) = 0;
  115.         
  116.         virtual HRESULT STDMETHODCALLTYPE SetIndexMode( 
  117.             /* [in] */ BOOL bIndexFile) = 0;
  118.         
  119.         virtual HRESULT STDMETHODCALLTYPE GetIndexMode( 
  120.             /* [out] */ BOOL *pbIndexFile) = 0;
  121.         
  122.     };
  123.     
  124. #else     /* C style interface */
  125.  
  126.     typedef struct IConfigAsfWriterVtbl
  127.     {
  128.         BEGIN_INTERFACE
  129.         
  130.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  131.             IConfigAsfWriter * This,
  132.             /* [in] */ REFIID riid,
  133.             /* [iid_is][out] */ void **ppvObject);
  134.         
  135.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  136.             IConfigAsfWriter * This);
  137.         
  138.         ULONG ( STDMETHODCALLTYPE *Release )( 
  139.             IConfigAsfWriter * This);
  140.         
  141.         HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfileId )( 
  142.             IConfigAsfWriter * This,
  143.             /* [in] */ DWORD dwProfileId);
  144.         
  145.         HRESULT ( STDMETHODCALLTYPE *GetCurrentProfileId )( 
  146.             IConfigAsfWriter * This,
  147.             /* [out] */ DWORD *pdwProfileId);
  148.         
  149.         HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfileGuid )( 
  150.             IConfigAsfWriter * This,
  151.             /* [in] */ REFGUID guidProfile);
  152.         
  153.         HRESULT ( STDMETHODCALLTYPE *GetCurrentProfileGuid )( 
  154.             IConfigAsfWriter * This,
  155.             /* [out] */ GUID *pProfileGuid);
  156.         
  157.         HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfile )( 
  158.             IConfigAsfWriter * This,
  159.             /* [in] */ IWMProfile *pProfile);
  160.         
  161.         HRESULT ( STDMETHODCALLTYPE *GetCurrentProfile )( 
  162.             IConfigAsfWriter * This,
  163.             /* [out] */ IWMProfile **ppProfile);
  164.         
  165.         HRESULT ( STDMETHODCALLTYPE *SetIndexMode )( 
  166.             IConfigAsfWriter * This,
  167.             /* [in] */ BOOL bIndexFile);
  168.         
  169.         HRESULT ( STDMETHODCALLTYPE *GetIndexMode )( 
  170.             IConfigAsfWriter * This,
  171.             /* [out] */ BOOL *pbIndexFile);
  172.         
  173.         END_INTERFACE
  174.     } IConfigAsfWriterVtbl;
  175.  
  176.     interface IConfigAsfWriter
  177.     {
  178.         CONST_VTBL struct IConfigAsfWriterVtbl *lpVtbl;
  179.     };
  180.  
  181.     
  182.  
  183. #ifdef COBJMACROS
  184.  
  185.  
  186. #define IConfigAsfWriter_QueryInterface(This,riid,ppvObject)    \
  187.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  188.  
  189. #define IConfigAsfWriter_AddRef(This)    \
  190.     (This)->lpVtbl -> AddRef(This)
  191.  
  192. #define IConfigAsfWriter_Release(This)    \
  193.     (This)->lpVtbl -> Release(This)
  194.  
  195.  
  196. #define IConfigAsfWriter_ConfigureFilterUsingProfileId(This,dwProfileId)    \
  197.     (This)->lpVtbl -> ConfigureFilterUsingProfileId(This,dwProfileId)
  198.  
  199. #define IConfigAsfWriter_GetCurrentProfileId(This,pdwProfileId)    \
  200.     (This)->lpVtbl -> GetCurrentProfileId(This,pdwProfileId)
  201.  
  202. #define IConfigAsfWriter_ConfigureFilterUsingProfileGuid(This,guidProfile)    \
  203.     (This)->lpVtbl -> ConfigureFilterUsingProfileGuid(This,guidProfile)
  204.  
  205. #define IConfigAsfWriter_GetCurrentProfileGuid(This,pProfileGuid)    \
  206.     (This)->lpVtbl -> GetCurrentProfileGuid(This,pProfileGuid)
  207.  
  208. #define IConfigAsfWriter_ConfigureFilterUsingProfile(This,pProfile)    \
  209.     (This)->lpVtbl -> ConfigureFilterUsingProfile(This,pProfile)
  210.  
  211. #define IConfigAsfWriter_GetCurrentProfile(This,ppProfile)    \
  212.     (This)->lpVtbl -> GetCurrentProfile(This,ppProfile)
  213.  
  214. #define IConfigAsfWriter_SetIndexMode(This,bIndexFile)    \
  215.     (This)->lpVtbl -> SetIndexMode(This,bIndexFile)
  216.  
  217. #define IConfigAsfWriter_GetIndexMode(This,pbIndexFile)    \
  218.     (This)->lpVtbl -> GetIndexMode(This,pbIndexFile)
  219.  
  220. #endif /* COBJMACROS */
  221.  
  222.  
  223. #endif     /* C style interface */
  224.  
  225.  
  226.  
  227. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_ConfigureFilterUsingProfileId_Proxy( 
  228.     IConfigAsfWriter * This,
  229.     /* [in] */ DWORD dwProfileId);
  230.  
  231.  
  232. void __RPC_STUB IConfigAsfWriter_ConfigureFilterUsingProfileId_Stub(
  233.     IRpcStubBuffer *This,
  234.     IRpcChannelBuffer *_pRpcChannelBuffer,
  235.     PRPC_MESSAGE _pRpcMessage,
  236.     DWORD *_pdwStubPhase);
  237.  
  238.  
  239. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetCurrentProfileId_Proxy( 
  240.     IConfigAsfWriter * This,
  241.     /* [out] */ DWORD *pdwProfileId);
  242.  
  243.  
  244. void __RPC_STUB IConfigAsfWriter_GetCurrentProfileId_Stub(
  245.     IRpcStubBuffer *This,
  246.     IRpcChannelBuffer *_pRpcChannelBuffer,
  247.     PRPC_MESSAGE _pRpcMessage,
  248.     DWORD *_pdwStubPhase);
  249.  
  250.  
  251. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_ConfigureFilterUsingProfileGuid_Proxy( 
  252.     IConfigAsfWriter * This,
  253.     /* [in] */ REFGUID guidProfile);
  254.  
  255.  
  256. void __RPC_STUB IConfigAsfWriter_ConfigureFilterUsingProfileGuid_Stub(
  257.     IRpcStubBuffer *This,
  258.     IRpcChannelBuffer *_pRpcChannelBuffer,
  259.     PRPC_MESSAGE _pRpcMessage,
  260.     DWORD *_pdwStubPhase);
  261.  
  262.  
  263. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetCurrentProfileGuid_Proxy( 
  264.     IConfigAsfWriter * This,
  265.     /* [out] */ GUID *pProfileGuid);
  266.  
  267.  
  268. void __RPC_STUB IConfigAsfWriter_GetCurrentProfileGuid_Stub(
  269.     IRpcStubBuffer *This,
  270.     IRpcChannelBuffer *_pRpcChannelBuffer,
  271.     PRPC_MESSAGE _pRpcMessage,
  272.     DWORD *_pdwStubPhase);
  273.  
  274.  
  275. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_ConfigureFilterUsingProfile_Proxy( 
  276.     IConfigAsfWriter * This,
  277.     /* [in] */ IWMProfile *pProfile);
  278.  
  279.  
  280. void __RPC_STUB IConfigAsfWriter_ConfigureFilterUsingProfile_Stub(
  281.     IRpcStubBuffer *This,
  282.     IRpcChannelBuffer *_pRpcChannelBuffer,
  283.     PRPC_MESSAGE _pRpcMessage,
  284.     DWORD *_pdwStubPhase);
  285.  
  286.  
  287. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetCurrentProfile_Proxy( 
  288.     IConfigAsfWriter * This,
  289.     /* [out] */ IWMProfile **ppProfile);
  290.  
  291.  
  292. void __RPC_STUB IConfigAsfWriter_GetCurrentProfile_Stub(
  293.     IRpcStubBuffer *This,
  294.     IRpcChannelBuffer *_pRpcChannelBuffer,
  295.     PRPC_MESSAGE _pRpcMessage,
  296.     DWORD *_pdwStubPhase);
  297.  
  298.  
  299. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_SetIndexMode_Proxy( 
  300.     IConfigAsfWriter * This,
  301.     /* [in] */ BOOL bIndexFile);
  302.  
  303.  
  304. void __RPC_STUB IConfigAsfWriter_SetIndexMode_Stub(
  305.     IRpcStubBuffer *This,
  306.     IRpcChannelBuffer *_pRpcChannelBuffer,
  307.     PRPC_MESSAGE _pRpcMessage,
  308.     DWORD *_pdwStubPhase);
  309.  
  310.  
  311. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetIndexMode_Proxy( 
  312.     IConfigAsfWriter * This,
  313.     /* [out] */ BOOL *pbIndexFile);
  314.  
  315.  
  316. void __RPC_STUB IConfigAsfWriter_GetIndexMode_Stub(
  317.     IRpcStubBuffer *This,
  318.     IRpcChannelBuffer *_pRpcChannelBuffer,
  319.     PRPC_MESSAGE _pRpcMessage,
  320.     DWORD *_pdwStubPhase);
  321.  
  322.  
  323.  
  324. #endif     /* __IConfigAsfWriter_INTERFACE_DEFINED__ */
  325.  
  326.  
  327. /* Additional Prototypes for ALL interfaces */
  328.  
  329. /* end of Additional Prototypes */
  330.  
  331. #ifdef __cplusplus
  332. }
  333. #endif
  334.  
  335. #endif
  336.  
  337.  
  338.